Harmony Transformer: Incorporating Chord Segmentation Into Harmony Recognition
ShuKumata.icon
The problem the authors try to solve:
1枚まとめ
1. どんなもの? 問題意識は?
segmentationを中間表現として扱うために、途中でauto-regressiveでない処理を加えている?
既存のDeep Learningを用いた手法の大部分は、(意味的に不完全なセグメントの連続と見なしているため?)アルペジオや移調が出た時にうまく認識できない。
この問題は、メトリックや拍の情報などの一時知識(temporal knowledge)を考慮したり、HMMのような後処理(post-processing)を加えたり、harmonic change detection function(HCDF)やbeat-synchronous audio featuresのような特徴量エンジニアリングを行うことで対処された。
Chord Recognitionは系列ラベリングとして定式化でき、高度なルールによって規定されている系列という点で自然言語処理と類似している。しかし、言語の1単語1単語はそれだけで意味のあるunitを形成しているが、音楽のセグメントではハーモニーが完成されている必要はない。ハーモニーの境界を明示的に十分に与えれば、良い結果が得られるのではないか。 先にchord segmentationを行い、それを元にchord recognitionを行う。(学習は同時に行う)
2. 先行研究と比べてどこがすごい?
3. 技術や手法のキモはどこ?
4. どうやって有効だと検証した?
1-layer bidirectional RNN using LSTM cells(筆者がベースラインとした、BLSTMと呼ぶ)とConvNet-HMM model(MIREX Audio Chord Estimation campainでSOTAを達成している、Madmom audio chord recognition frameworkに似た手法。FKと呼ぶ)と比較。
chord symbol recognitionタスクにおいて、WCSRスコアで比較し、最も良い精度(80くらい)。 24のmajor, minor triad とothersとno-chordの推定タスク
segmentationのF1スコアはrecall rateが低い(50%程度)ために十分ではない
harmonic function recognitionrタスクにおいて、classification accuracyで比較し、BLSTMよりも良い精度(7,80%くらい)。
5つのchord functionsのsegment-wiseの予測
24のkey(A, D#等)
21のprimary degree(1度、5度等)
21のsecondary degree
10のchord quality(major, dom.7th等)
4のchord inversion
keyの移調により強いことが示された。
5. 議論はある?
6. 次に読むべき論文は?
7. メモ
1
自動コード認識は、音楽情報検索(MIR)の分野における特徴的な研究トピックであり、広く研究されてきました。過去10年間で、この問題は、多層パーセプトロン(MLP)1から、畳み込みニューラルネットワーク(CNN)2–6やリカレントなどのより複雑なモデルに至るまで、さまざまな深層学習手法を使用して対処されてきました。ニューラルネットワーク(RNN)7–11。畳み込みリカレントニューラルネットワーク(CRNN)などのハイブリッドシステムも、さまざまなニューラルネットワークを利用するためのコード認識タスクに導入されています12–15。最先端の技術を進歩させるための深層学習モデルの重要な成果にもかかわらず、コード認識タスクのさらなる改善は限られているようであり、ガラスの天井に達しています4。このような制限は、フレームレベルのデータに基づいて音楽の階層構造を推測するための深層学習方法の能力がないことに起因する可能性があります。以前の多くの研究で見過ごされてきた傾向は、コード認識モデルの大部分が曲を意味的に不完全なセグメントの連結と見なしているため、コード遷移などの複雑な音楽文法をキャプチャするには効果がないことです13。図2(セクション4.4を参照)は、アルペジオまたはキー変調が存在する場合に、RNNモデルがコード境界を適切にセグメント化できない例を示しています。この問題は、メトリックやビート情報などの時間的知識を統合すること16、17、隠れマルコフモデル(HMM)などの後処理を追加すること18,19、または調和変化などの機能エンジニアリングによって対処されました。検出機能(HCDF)20およびビート同期オーディオ機能21。最近のある研究では、フレームレベルとコードレベルの異なるレベルでコードを認識するモデルを組み込むことでこの問題を解決しようとしましたが、協調モデルではコード認識の結果が改善されました14。本論文では、コード認識とコードセグメンテーションをエンドツーエンドのコード認識システムに統合するハーモニートランスフォーマーを提案します。 Harmony Transformerは、機械翻訳22、自然言語理解23、音楽生成24などのさまざまなシーケンスモデリングの問題に現在適用されているディープニューラルネットワークであるTransformerに基づいています。 Transformerのエンコーダー・デコーダー・アーキテクチャーでは、コード・セグメンテーション・タスクをエンコーダーに割り当て、コード認識タスクをデコーダーに割り当てます。この分割により、コード認識ネットワークはコードセグメンテーションの予測から利益を得ることができます。大量の順次計算のためにかなり時間がかかるRNNを使用する他の設計と比較して、Transformerは、順次データを処理するために並列化を強制するため、速度がより効果的です。 Harmony Transformerは、複雑な分析シナリオ、つまり調和関数1の認識も可能です25。私たちの実験結果は、コード記号認識と調和関数認識の両方を改善するための提案されたモデルの利点を強調しています。私たちの知る限り、これはTransformerフレームワークを介してコードセグメンテーションタスクとコード認識タスクを接続する最初の作業です。私たちの貢献が自動コード認識のさらなる発展を促進することを願っています。 ¥
2
コード認識は、特定のシーケンス(音楽シーケンスなど)の各要素にカテゴリラベル(コード名など)を割り当てるシーケンスラベリングタスク26として定式化できます。音楽のシーケンシャルおよび構造的性質を考慮すると、コード認識タスクは多くの自然言語処理(NLP)の問題に似ており、音楽のコードのシーケンシャルな配置と言語の単語の両方がより高いレベルのルール(和音と言語の文法)。したがって、音楽または言語の説得力のある認識モデルは、シーケンスの固有の階層構造を展開することが期待されます。典型的な例は、NLPの品詞(POS)タグ付けタスクです。これは、文の各単語に特定の品詞を割り当てます。多くの単語が異なる時間に複数の品詞を表すことができますが、深層学習モデルは、特定のコンテキストでローカルレベルの割り当てを調整する能力を示し、満足のいくパフォーマンスを示しています。 2一方、近年の和音認識の結果はまだ満足のいくものではありませんでした1,8,13–15。言語と音楽の主な違いは、POSタグ付けタスクの入力文の各単語が意味的に意味のある単位を表すのに対し、コード認識タスクでラベル付けされる音楽セグメントは必ずしも調和的に完了する必要がないことです。和音認識タスクにおける不十分な成果は、音楽シーケンス内の調和境界に関する形式知の不足に関連している可能性があると主張することができます。シーケンシャルプロパティと階層構造は言語と調和数列の間で共有される特性であるため、高レベルの音楽階層におけるハーモニーのセグメンテーション情報をコード認識の深層学習モデルに導入すると有利です。最近の研究では、2つのRNNベースのモデルを使用してフレームごとのコード認識の階層的な問題に取り組み、各コードの持続時間と遷移を並行して個別に予測しました14。具体的には、フレームごとのコード予測は、最初にCNNベースの音響モデルを介して生成され、次に2つのRNNベースのモデル(コード持続時間モデルとハーモニック言語モデル)に同時に入力されて、コードの変化の時点を予測します。フレームレベルとコードレベルでのコード進行。 2つのRNNベースのモデルは、音響モデルとは別にトレーニングされ、各トークンの確率分布を順番に計算する言語モデルとして利用されます。 音楽の階層を組み込むことは、コード認識を改善するために有望であることが実証されています。それにもかかわらず、実際のコードラベルのローカル割り当ては、さまざまな階層レベルからの知識に連続的に依存しています。したがって、1)コードの変化とコード進行は、水平方向ではなく垂直方向にモデル化する必要があると主張します。言い換えれば、コード認識問題は、コードセグメンテーション問題よりも音楽階層の上位レベルに属し、コードの認識はセグメンテーションの結果に基づく必要があると想定します。 2)2つのRNNベースの言語モデルなど、高レベルの情報を処理するモデルは、低レベルのモデルと共同でトレーニングする必要があります。この研究では、コードセグメンテーションの結果に応じて特定のシーケンスのコード進行を予測し、エンドツーエンドでトレーニングする新しいフレームワークを提案します。
リンク